package com.jrx.anytxn.transaction.dto.loanRelationInfo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * 贷款要素查询返回
 *
 * @author : zhenghaopu
 * 2019/11/21
 */
@ApiModel(value = "贷款要素查询返回实体", description = "贷款要素查询返回实体")
public class LoanElementQueryRes implements Serializable {

    /**
     * 产品码
     */
    @ApiModelProperty(value = "产品编码")
    private String productId;

    /**
     * 产品名
     */
    @ApiModelProperty(value = "产品名称")
    private String productName;

    /**
     * 贷款类型
     */
    @ApiModelProperty(value = "贷款类型")
    private String productType;

    /**
     * 最大金额
     */
    @ApiModelProperty(value = "最大金额")
    private BigDecimal maxAmount;

    /**
     * 最小金额
     */
    @ApiModelProperty(value = "最小金额")
    private BigDecimal minAmount;

    /**
     * 是否允许联合贷标志
     */
    @ApiModelProperty(value = "是否允许联合贷标志")
    private String allowJointFlag;

    /**
     * 最小剩余本金
     */
    @ApiModelProperty(value = "最小剩余本金")
    private BigDecimal minRemainPrincipal;

    /**
     * 主动还款，最小还款金额
     */
    @ApiModelProperty(value = "主动还款，最小还款金额")
    private BigDecimal minRepayAmount;

    /**
     * 还款方式和期数
     */
    private List<AmortMethodRes> amortMethodRes;

    public String getProductId() {
        return productId;
    }

    public void setProductId(String productId) {
        this.productId = productId;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public BigDecimal getMaxAmount() {
        return maxAmount;
    }

    public void setMaxAmount(BigDecimal maxAmount) {
        this.maxAmount = maxAmount;
    }

    public BigDecimal getMinAmount() {
        return minAmount;
    }

    public void setMinAmount(BigDecimal minAmount) {
        this.minAmount = minAmount;
    }

    public String getProductType() {
        return productType;
    }

    public void setProductType(String productType) {
        this.productType = productType;
    }

    public BigDecimal getMinRemainPrincipal() {
        return minRemainPrincipal;
    }

    public void setMinRemainPrincipal(BigDecimal minRemainPrincipal) {
        this.minRemainPrincipal = minRemainPrincipal;
    }

    public BigDecimal getMinRepayAmount() {
        return minRepayAmount;
    }

    public void setMinRepayAmount(BigDecimal minRepayAmount) {
        this.minRepayAmount = minRepayAmount;
    }

    public String getAllowJointFlag() {
        return allowJointFlag;
    }

    public void setAllowJointFlag(String allowJointFlag) {
        this.allowJointFlag = allowJointFlag;
    }

    /**
     * 获取 还款方式和期数
     *
     * @return amortMethodRes 还款方式和期数
     */
    public List<AmortMethodRes> getAmortMethodRes() {
        return this.amortMethodRes;
    }

    /**
     * 设置 还款方式和期数
     *
     * @param amortMethodRes 还款方式和期数
     */
    public void setAmortMethodRes(List<AmortMethodRes> amortMethodRes) {
        this.amortMethodRes = amortMethodRes;
    }
}
